Method for sharing network information and a router apparatus

ABSTRACT

A highly-expandable router configuration technology which flexibly meets the need to increase lines as a network grows. A network information sharing unit is provided in a route calculation unit of each router in a clustered router. The network information sharing unit receives an update notification of network information collected by routing protocol units and sends this update information to all other routers in the clustered router as a network information notification packet. The network information sharing units in the receiving router notifies the routing protocol units of the contents of the received updated information. The routing protocol unit updates the network information thereof based on the notified contents, thereby allowing the network information obtained from all routers outside the clustered router to be shared and the clustered router to be recognized externally as a single router.

CROSS-REFERENCE TO RELATED APPLICATIONS

[0001] This application relates to applications U.S. Ser. No. 09/190,437filed on Nov. 13, 1998 and U.S. Ser. No. 09/195,707 filed on Nov. 19,1998 assigned to the present assignee. The disclosure of thoseapplications is incorporated herein by reference.

BACKGROUND OF THE INVENTION

[0002] The present invention relates to a network forwarding apparatus,and more particularly to a router apparatus having a routing protocolfor generating a routing table used to determine the destination of apacket to be transferred between communication terminals.

[0003] A router which forwards packets between communication terminalsmust accommodate a large number of lines. Conventionally, when there isa need to increase the lines as the network grows, routers must be addedto the network and a configuration definition must be created for eachadded router.

[0004] Because there is no definite means for establishing anassociation of a plurality of routers that were added, a routingprotocol usually used to transfer packets to or from other terminals hasbeen used to exchange information among the plurality of routers.

[0005] However, the prior art described above has the followingproblems.

[0006] First, when routers are added as the network grows, the networkforwarding function is executed by the plurality of routers. Theplurality of routers form a router network, which requires a subnet.This results not only in the waste of network addresses but also in thereduction of address space available to users.

[0007] Second, each independent router requires that the configurationbe defined for it (configuration definition); for example, the networkinterface addresses or the routing protocol execution parameters must bedefined for each router. This increases the network management cost notonly at configuration definition change time but also at production runtime.

[0008] Third, a routing protocol performs version verification, routeexchanging priority determination, and so on in order to exchangenetwork information with other routers. The load of this processing islarge enough compared with that of actual network information exchange.Thus, the routing protocol is not suitable for network informationexchange among the routers which are added as lines are added; that is,it is not suitable for network information exchange in a closedenvironment. In some cases, the routing protocol also decreases theperformance of terminal-to-terminal packet forwarding processing whichis the fundamental processing of routers. The above-mentioned prior artis referred to in the following publication, for example: (1) Thomas M.Thomas II “OSPF Network Design Solutions” Macmillan Technical Publishingpp. 129-202; (2) RFC:791 “INTERNET PROTOCOL DARPA INTERNET PROGRAMPROTOCOL SPECIFICATION” September 1981, Pages (i)-(iii); (3) RFC1058, C.Hedrick “Routing Information Protocol” June 1988, pp. 1-6; and (4)RFC2178, J. Moy “OSPF Version 2” July 1997, pp. 1-6.

SUMMARY OF THE INVENTION

[0009] To solve the above problems, it is an object of the presentinvention to provide a highly-expandable router configuration technologywhich flexibly meets the need to increase lines as a network grows.

[0010] To achieve the above object, an aspect of the present inventionprovides network information sharing means in each router to allownetwork information collected by routing protocols running in aplurality of routers to be shared. Sharing network information by theplurality of routers makes them externally appear as if they were asingle virtual router. In the following description, this virtual routeris called a clustered router.

[0011] The routing protocol running in each router in the clusteredrouter exchanges network information with other routers outside theclustered router and, when its own network information changes, notifiesthe network information sharing means of the change.

[0012] The network information sharing means, when notified of theinformation, generates a network information notification packetcontaining a routing protocol identifier and sends the packet to allrouters in the clustered router. Upon receiving the network informationnotification packet, the network information sharing means extractsupdate information from the received packet and sends the extractedupdate information to the corresponding routing protocol means inaccordance with the routing protocol identifier.

[0013] When the routing protocol means receives the update information,it updates its own network information with the received information.

BRIEF DESCRIPTION OF THE DRAWINGS

[0014]FIG. 1 is a diagram showing the configuration of a clusteredrouter and the functional blocks of each router of the clustered routeraccording to an embodiment of the present invention.

[0015]FIG. 2 is a diagram showing the network system configuration ofthe clustered router.

[0016]FIG. 3 is a diagram showing the module configuration of eachrouter of the clustered router.

[0017]FIG. 4 is a diagram showing the hardware configuration of therouter.

[0018]FIG. 5 is a diagram showing the structure of an NISP (networkinformation sharing protocol) packet.

[0019]FIG. 6 is a diagram showing the structure of a NISP managementpacket.

[0020]FIG. 7 is a diagram showing the structure of a NISP Boot packet.

[0021]FIG. 8 is a diagram showing the structure of a NISP Flash packet.

[0022]FIG. 9 is a diagram showing the structure of a NISP for RIPpacket.

[0023]FIG. 10 is a diagram showing the operation sequence of the NISPBoot function.

[0024]FIG. 11 is a diagram showing the operation sequence of the NISPFlash function.

[0025]FIG. 12 is a diagram showing the operation sequence of NISPnetwork information notification.

[0026]FIG. 13 is a diagram showing the operation sequence of the NISPFlash & Boot function that is performed during re-initialization of therouting protocol means 15.

[0027]FIG. 14 is a diagram showing the operation sequence the routingprotocol means.

[0028]FIG. 15 is a flowchart showing the packet transmission operationof the NISP means.

[0029]FIG. 16 is a flowchart showing the packet reception operation ofthe NISP means.

[0030]FIG. 17 is a flowchart showing another operation of the routingprotocol means.

[0031]FIG. 18 is a diagram showing the functional blocks according toanother embodiment of the present invention.

DESCRIPTION OF THE EMBODIMENTS

[0032] An embodiment of the present invention will be described belowwith reference to the drawings.

[0033]FIG. 1 shows the configuration of a clustered router according tothe present invention and the functional blocks of each routerconstituting the clustered router. A clustered router 11 includes aplurality of routers each connected by a router-to-router switch 13.Each router 12 includes a route calculation unit 20 which generates anddistributes a routing table used for forwarding packets and a pluralityof forwarding unit 18 each of which forwards packets.

[0034] Within the route calculation unit 20 of each router 12 isprovided two or more routing protocol means 15 which execute routingprotocols. Each of the routing protocol means 15 sends or receivescontrol packets to or from some other routers 25 on a network 21 outsidethe clustered router 11 to obtain network information 16. From theobtained network information 16, the routing protocol means 15 executesroute calculation processing, generates terminal-to-terminal routinginformation, and adds this information to a routing table (RT) 17.

[0035] The routing table 17 generated as described above is distributedto the forwarding units 18 within the router 12 to decide whether toforward packets.

[0036] On the other hand, when the routing protocol means 15 updates thenetwork information 16, it requests network information sharing means 14to send the update information. In the following description, thisnetwork information sharing means 14 is described as NISP (NetworkInformation Sharing Protocol) means 14. The NISP means 14 generates anetwork information notification packet 19 based on the updateinformation and sends it to all other routers in the clustered router 11through the router-to-router switch 13. This may be done either bysending a plurality of packets each with the destination of eachdestination router or by sending a single packet with the destinationrepresenting all routers. Taking into consideration that the pluralityof routing protocol means 15 are running in the route calculation unit20, the network information notification packet 19 described above hasan identifier (routing protocol identifier) thereon indicating whichrouting protocol means has generated the update information the packetis now carrying.

[0037] The NISP means 14 of the destination router 12 receives thenetwork information notification packet 19. The NISP means 14 checks therouting protocol identifier included in the received packet and sendsthe update information to the corresponding routing protocol means 15.

[0038] The routing protocol means 15 updates the network information 16based on the update information sent from the NISP means 14.

[0039]FIG. 2 shows the configuration of the network system using theclustered router 11. The clustered router 11, composed of the routers 12and the router-to-router switch 13, is connected to communicationterminals 26 and routers 25 functioning as network forwarding apparatus.The clustered router 11 appears to the communication terminals 26 andthe other routers 25 as if it was a single network forwarding apparatus.The internal configuration of the clustered router 11 in which aplurality of routers 12 are provided is not visible externally. Therouter 25 sends or receives routing protocol packets to or from theclustered router 11 to obtain network information. The router 25 thengenerates the routing table of its own from the obtained networkinformation for use in packet forwarding between the communicationterminals 26.

[0040] The network information the router 25 receives from the clusteredrouter 11 contains enough information for generating routing informationused to send packets via the clustered router 11. Communication betweenthe communication terminals 26 via the clustered router 11 is performedthe same way communication between the communication terminals 26 via asingle router is performed.

[0041]FIG. 3 is a diagram showing the configuration of the modules ofthe NISP means 14 and the routing protocol means 15. Each routingprotocol means 15 updates the network information 16 by sending andreceiving routing protocol packets. The routing protocol means 15 maycontain a plurality of modules 22 which update the network information16. Each of these modules directly starts an acceptance module 31 in theNISP means 14.

[0042] Upon receiving a request from the routing protocol means 15, theacceptance module 31 in the NISP means 14 creates the networkinformation notification packet 19 based on the request information.After that, a sending module 34 is started for sending the networkinformation notification packet 19.

[0043] When the network information notification packet 19 is received,a receiving module 33 is started. The receiving module 33 starts arequesting module 32 and passes the received network informationnotification packet 19 to it. Based on the routing protocol identifierincluded in the network information notification packet 19, therequesting module 32 starts an accepting module 35 in the correspondingrouting protocol means 15.

[0044] The accepting module 35 in the routing protocol means 15 updatesthe network information 16 based on the received update information.

[0045]FIG. 4 shows the hardware configuration of the router 12. Therouter 12 includes the route calculation unit 20 and the forwardingunits 18 connected by a router internal switch 46. The router 12performs communication with other routers 12 via an inter-router switchaccess controller 47.

[0046] The route calculation unit 20 includes a route calculationprocessor 41 and a memory 42. The route calculation processor 41 sendsor receives routing protocol packets to or from the routers 25 connectedto the router 12, calculates the routing table, and distributes it tothe forwarding units 18. The NISP means 14 and the routing protocolmeans 15 are implemented by the route calculation processor 41. Thememory 42 stores the network information 16 and the routing table 17therein.

[0047] The forwarding unit 18 includes a forwarding processor 43, amemory 44, and a packet buffer 45. The forwarding processor 43determines whether to forward a packet between the communicationterminals 26 and the output forwarding unit 18. The memory 44 containsthe routing table, which is indispensable for packet forwarding,distributed from the route calculation unit 20. The packet buffer 45temporarily contains packets received by the router 12. A packetdetermined to be forwarded is sent to the packet buffer 45 in the outputforwarding unit 18. A packet determined not to be forwarded is erasedform the packet buffer 45.

[0048] FIGS. 5 to 9 show the structure of packets sent or received bythe NISP means 14. The packets shown in these figures include thenetwork information notification packet 19 described above as well asthe packet for managing the NISP means 14. Generically, these packetsare called NISP packets.

[0049]FIG. 5 shows the general structure of a NISP packet. The NISPpacket is divided roughly into the common header section and the datasection. The common header section comprises a version field containingthe NISP version information, a protocol field containing the routingprotocol identifier, a speaker ID field identifying the NISP packetsender, and a length field indicating the entire length of the NISPpacket. The data section comprises a data field describing informationon the routing protocol to be executed by the routing protocol means 15is stored.

[0050] In some cases, each router 12 of the clustered router 11 may turnon or off power independently (or may re-initialize itself formanagement). With this in mind, the following two functions arenecessary.

[0051] The first function, called the boot function, is used by therouter 12 during startup to obtain the network information 16 of otherrouters 12.

[0052] The second function, called the flash function, is used by therouter 12 during shutdown to request other routers 12 to delete thenetwork information 16 previously sent by the router 12 that is going toshut down.

[0053] The two functions described above maintain the integrity of thenetwork information 16 among all routers 12 in the clustered router 11.

[0054] In addition, when the routing protocol being executed by therouting protocol means 15 is sometimes re-initialized for managementpurpose. This is done by re-initializing the routing protocol means 15.To do so, the functions described above are also required to obtain thenetwork information 16 of the routing protocol from other routers 12 andto delete the network information 16 of the routing protocol from otherrouters 12.

[0055] To implement the boot function and the flash function describedabove, the NISP management packet are defined. FIG. 6 shows thestructure of the NISP management packet. The protocol field of thecommon header section of the NISP management packet always contains thevalue indicating “NISP”. The common header section is followed by theNISP administration header section and the management data section. TheNISP administration header section includes the cmd field where the typeof the management command is stored. The cmd field contains the value“Boot” or “Flash”. The management data section includes themanagement-data field in which information defined for each managementcommand is stored.

[0056]FIG. 7 shows the structure of the NISP Boot packet used toimplement the boot function. The cmd field of the NISP administrationheader section contains the value indicating “Boot”. The management-datasection includes the req-protocol field and the boot ID field. Thereq-protocol field contains the type of the routing protocol executed bythe routing protocol means 15 requesting the Boot function. The boot IDfield contains the identifier indicating the Boot requester.

[0057]FIG. 8 shows the structure of the NISP Flash packet used toimplement the flash function. The cmd field of the NISP administrationheader section contains the value indicating “Flash”. Themanagement-data section includes the req-protocol field and the flash IDfield. The req-protocol field contains the type of the routing protocolexecuted by the routing protocol means 15 requesting the Flash function.The flash ID field contains the identifier indicating the Flashrequester.

[0058]FIG. 9 shows an example of the network information notificationpacket 19. It shows the structure of a packet (called a NISP for RIPpacket) used to carry the network information of RIP (RoutingInformation Protocol), one of routing protocols executed by the routingprotocol means 15. The protocol field of the common header section ofthe NISP for RIP packet contains the value indicating “RIP”. The commonheader section is followed by the NISP-RIP header section and theNISP-RIP data section. The NISP-RIP header section includes the versionfield indicating the version of NISP for RIP and the No. of data fieldindicating the number of NISP-RIP data pieces included in the packet.The NISP-RIP data section includes a sequence of data units eachcomposed of the cmd field indicating the type of command, such as “ADD”or “DEL”, and network information collected by RIP. The networkinformation collected by RIP includes the network address, the addressof a router through which a packet must first arrive to reach thenetwork, and so on.

[0059]FIG. 10 shows the operation sequence of the boot function that isexecuted when the router 12 is powered on. When the router 12 is poweredon (91), a NISP Boot packet 92 is generated during initialization and issent to all other routers 12. The req-protocol field of this NISP Bootpacket 92 contains a value indicating all routing protocols.

[0060] When the NISP means 14 in the receiving router 12 receives thisNISP Boot packet 92, it sends a Boot reception notification 93 to allrouting protocol means 15 in that router because the req-protocol fieldcontains the value indicating all routing protocols.

[0061] When routing protocol A, one of the routing protocol means 15 inthe router 12, receives this Boot reception notification 93, it searchesits own network information 16 for the network information other thanthat obtained through NISP packets, and sends a transmission request 94to the NISP means 14 with the obtained information as the updateinformation.

[0062] Upon receiving this transmission request 94, the NISP means 14checks the routing protocol (routing protocol A) executed by the routingprotocol means 15 that issued the transmission request 94, generates anetwork information notification packet 95 (the protocol field of thecommon header section indicates routing protocol A), and sends thegenerated network information notification packet 95 to the router 12from which the NISP Boot packet was issued.

[0063] Upon receiving the network information notification packet 95 forrouting protocol A, the NISP means 14 in the router 12, from which theNISP Boot packet was issued, selects the routing protocol means 15 forexecuting routing protocol A. This is because the protocol field of thecommon header section of the packet indicates routing protocol A. TheNISP means 14 then sends an update information notification 96 to theselected routing protocol means 15.

[0064] When the routing protocol means 15 receives the updateinformation notification 96, it adds this information to its own networkinformation 16.

[0065]FIG. 11 shows the operation sequence of the Flash function that isexecuted when the router 12 is shut down. When the router 12 is shutdown (101), a NISP Flash packet 102 is generated during shutdown and issent to all other routers 12. The req-protocol field of this NISP Flashpacket 102 contains a value indicating all routing protocols.

[0066] Upon receiving this NISP Flash packet 102, the NISP means 14 inthe receiving router 12 sends a Flash reception notification 103 to allrouting protocol means 15 in that router 12 because the req-protocolfield contains the value indicating all routing protocols.

[0067] When routing protocol means 15 in the router 12 receives thisFlash reception notification 103, it deletes from its own networkinformation 16 only the information obtained from the NISP means 14 ofthe router 12 identified by the flash ID of the received packet.

[0068]FIG. 12 shows how the network information 16 collected by the RIPis maintained when the RIP is used by the routing protocol means 15 asthe routing protocol. When the network information 16 is added throughexecution of the RIP (111), the routing protocol means 15 sends atransmission request 112 to the NISP means 14 to send the updateinformation.

[0069] When the NISP means 14 receives the transmission request 112, itgenerates a network information notification packet for the RIP 113 (theprotocol field of the common header section indicates RIP) because therouting protocol executed by the requesting routing protocol means 15 isthe RIP. The NISP means 14 then sends this packet to all other routersin the clustered router 11. At this time, the cmd field of the NISP forRIP data section shown in FIG. 9 indicates “ADD”.

[0070] Because the protocol field of the common header section of thepacket indicates the RIP, the NISP means 14 in the router 12 which hasreceived the network information notification packet for the RIP 113sends an update information notification 114 only to the routingprotocol means 15 which execute the RIP.

[0071] Upon receiving the update information notification 114, therouting protocol means 15 for executing the RIP adds the receivedinformation to its own network information 16 because the cmd field ofthe packet indicates “ADD”.

[0072] On the other hand, when network information is deleted from itsown network information 16 through execution of the RIP (115), therouting protocol means 15 sends a transmission request 116 to the NISPmeans 14 to send the update information.

[0073] When the NISP means 14 receives the transmission request 116, itgenerates a network information notification packet for the RIP 117because the routing protocol executed by the requesting routing protocolmeans 15 is the RIP. The NISP means 14 then sends this packet to allother routers 12 in the clustered router 11. At this time, the cmd fieldof the NISP for RIP data section indicates “DEL”.

[0074] Because the protocol field of the common header section of thepacket indicates the RIP, the NISP means 14 in the router 12 which hasreceived the network information notification packet for the RIP 117sends an update information notification 118 only to the routingprotocol means 15 which execute the RIP.

[0075] The routing protocol means 15 for executing the RIP which hasreceived the update information notification 118 deletes the receivedinformation from its own network information 16 because the cmd field ofthe packet indicates “DEL”.

[0076]FIG. 13 shows the operation sequence that is performed when theRIP is operating as the routing protocol executed by the routingprotocol means 15 in the router 12 and when only that routing protocolmeans 15 is reinitialized. When a request 121 to re-initialize only theRIP is generated, the routing protocol means 15 sends a NISP Flashpacket transmission request 122 to the NISP means 14 during RIPre-initialization of the routing protocol means 15.

[0077] Because the routing protocol of the requesting routing protocolmeans 15 is the RIP, the NISP means 14 which has received the NISP Flashpacket transmission request 122 generates a NISP Flash packet 123 whosereq-protocol field indicates the value RIP. The NISP means 14 then sendsthe generated packet to all other routers 12 in the clustered router 11.

[0078] The NISP means 14 in the receiving router 12 which has receivedthe NISP Flash packet 123 sends a Flash reception notification 124 onlyto the routing protocol means 15 that executes the RIP, because thereq-protocol field indicates RIP.

[0079] When the routing protocol means 15 that executes the RIP receivesthis Flash reception notification 124, it deletes only the informationobtained from the NISP means 14 of the router 12 identified by the flashID in the received packet.

[0080] When re-initialization is completed (125), the routing protocolmeans 15 that executes the RIP sends a NISP Boot packet transmissionrequest 126 to the NISP means 14.

[0081] The NISP means 14 which has received the NISP Boot packettransmission request 126 generates a NISP Boot packet 127 whosereq-protocol field indicates the value RIP, because the routing protocolof the requesting routing protocol means 15 is the RIP. The NISP means14 then sends the generated packet to all other routers 12 in theclustered router 11.

[0082] The NISP means 14 in the router 12 which has received the NISPBoot packet 127 sends a Boot reception notification 128 only to therouting protocol means 15 that executes the RIP, because thereq-protocol field indicates RIP.

[0083] When the routing protocol means 15 that executes the RIP receivesthis Boot reception notification 128, it searches its own networkinformation 16 for the network information other than that obtainedthrough NISP packet and sends a transmission request 129 to the NISPmeans 14 with the obtained network information as the updateinformation.

[0084] The NISP means 14 which has received the transmission request 129generates a network information notification packet for RIP 130 andsends it to the router 12 which issued the Boot packet, because therouting protocol of the requesting routing protocol means 15 is the RIP.At this time, the cmd field of the NISP for RIP data section indicates“ADD”.

[0085] The NISP means 14 of the router 12 which has received the networkinformation notification packet for RIP 130 sends an update informationnotification 131 only to the routing protocol means 15 which executesthe RIP, because the protocol field of the common header section of thepacket indicates RIP.

[0086] The routing protocol means 15 which executes the RIP and whichhas received the update information notification 131 adds thisinformation to its own network information 16.

[0087]FIG. 14 is a flowchart showing the operation of the routingprotocol means 15. The routing protocol means 15 checks if it hasreceived network information from a router external to the clusteredrouter 11 (step 201). Upon receiving network information, the routingprotocol means 15 checks if the received information matches the networkinformation it has (step 202). If they match, there is no need to updatethe network information; if they do not match, that is, when theexisting information is updated or deleted or when new information isadded, the routing protocol means 15 updates the network information(step 203). After that, the routing protocol means 15 requests the NISPmeans 14 to transmit the update information (step 204) and passescontrol back to step 201 to check if new network information isreceived.

[0088]FIG. 15 is a flowchart showing the operation that is executed bythe NISP means 14 when the update information transmission request isreceived. The NISP means 14 creates a network information notificationpacket based on the information transmission request (step 211),transmits the packet to other routers 12 in the clustered router 11(step 212), and ends the operation.

[0089]FIG. 16 is a flowchart showing the operation executed by the NISPmeans 14 when the network information notification packet is receivedfrom some other router 12. First, the NISP means 14 extracts theprotocol field from the common header (step 221) and checks to see ifthe extracted protocol field indicates NISP (step 222). If the extractedprotocol field does not indicate NISP, the NISP means 14 passes theupdate information to the routing protocol means 15 which executes therouting protocol specified by the protocol field (step 231) and ends theoperation.

[0090] If the extracted protocol field indicates NISP, that is, when thepacket is the NISP management packet, the NISP means 14 checks if thecmd field of the NISP management header indicates Flash (step 223).

[0091] If the cmd field of the NISP management header indicates Flash(step 223:Yes), the NISP means 14 checks if the req-protocol fieldcontains a value indicating all routing protocols (step 224). If thefield contains a value indicating all routing protocols, the NISP means14 notifies all routing protocol means 15 of Flash (step 226);otherwise, the NISP means 14 notifies the corresponding routing protocolmeans 15 of Flash (step 225). Then, the NISP means 14 ends theoperation.

[0092] If the cmd field of the NISP management header does not indicateFlash (step 223:NO), the NISP means 14 checks if the cmd field indicatesBoot (step 227).

[0093] If the cmd field of the NISP management header indicates Boot(step 227:YES), the NISP means 14 checks if the req-protocol fieldcontains a value indicating all routing protocols (step 228). If thereq-protocol field contains that value, the NISP means 14 notifies allrouting protocol means 15 of Boot (step 230); otherwise, the NISP means14 notifies the corresponding routing protocol means 15 of Boot (step229). Then, the NISP means 14 ends the operation.

[0094] If the cmd field of the NISP management header does not indicateBoot (step 227:NO), the NISP means 14 ends the operation.

[0095]FIG. 17 is a flowchart showing the operation executed by therouting protocol means 15 when it receives a notification from the NISPmeans 14. First, the routing protocol means 15 checks if thenotification is an update information notification (step 241). If thenotification from the NISP means 14 is an update informationnotification (step 241:YES), the routing protocol means 15 updates itsown network information 16 with the received update information (step242). If the notification from the NISP means 14 is not an updateinformation notification (step 241:NO), the routing protocol means 15checks if the notification is a Flash notification (step 243).

[0096] If the notification from the NISP means 14 is a Flashnotification (step 243:YES), the routing protocol means 15 deletes allinformation, received from the NISP means 14 of the router 12 identifiedby the flash ID field of the NISP Flash packet, from its networkinformation 16 (step 244). If the notification from the NISP means 14 isnot a Flash notification (step 243:NO), the routing protocol means 15checks if the notification is a Boot notification (step 245).

[0097] If the notification from the NISP means 14 is a Boot notification(step 245:YES), the routing protocol means 15 requests the NISP means 14to transmit all network information other than that obtained through theNISP means 14 to the NISP means 14 of the router 12 identified by theboot ID field of the NISP Boot packet (step 246). Then, the routingprotocol means 15 end the operation. If the. notification from the NISPmeans 14 is not a Boot notification (step 245:NO), the routing protocolmeans 15 end the operation.

[0098]FIG. 18 is a functional block diagram of the second embodimentaccording to the present invention. The router 12 comprises theplurality of route calculation units 20 each of which generates anddistributes the routing table used for packet forwarding and theplurality of forwarding processing units 18 each of which forwardspackets. Only one of the plurality of route calculation units 20 is inthe active state, and the rest are in the backup state. Though therouter 12 is one element of the clustered router 11 in this figure, thepresent invention is not limited to this configuration. The router mayexist alone.

[0099] Within the active-state route calculation unit 20, the routingprotocol means 15 is operating. The routing protocol means 15 sends orreceives control packets to or from some other router 25 on a networkoutside the router 12 to obtain the network information 16. From theobtained network information 16, the routing protocol means 15 performsroute calculation to generate routing information and adds thisinformation to the routing table 17.

[0100] The routing table 17 thus generated is distributed to theforwarding units 18 in the router 12 to decide whether to forwardpackets.

[0101] The routing protocol means 15 in the backup-state routecalculation unit 20 does not send or receive packets to or from someother router 25, nor does it distribute the routing table 17 to theforwarding unit 18.

[0102] After updating the network information 16, the routing protocolmeans 15 in the active-state route calculation unit 20 requests the NISPmeans 14 to send the update information. The NISP means 14 generates thenetwork information notification packet 19 based on this updateinformation and then sends it to all backup-state route calculationunits 20. Because there are the plurality of routing protocol means 15in the route calculation unit 20, the network information notificationpacket 19 has the identifier (routing protocol identifier) thereon toindicate which routing protocol has generated the update information.

[0103] The NISP means 14 in the backup-state route calculation unit 20checks the routing protocol identifier in the received packet and passesthe update information to the routing protocol means 15 of thecorresponding type.

[0104] The routing protocol means 15 in the backup-state routecalculation unit 20 updates the network information 16 based on theupdate information received from the NISP means 14. At this time, therouting protocol means 15 may or may not generate routing informationfrom the updated network information 16. If the routing protocol means15 does not generate the routing information at this time, it generatesnew routing information when the corresponding route calculation unit 20enters the active-state and then creates the routing table 17.

[0105] The operation described above keeps the network information 16 ofthe backup-state route calculation unit 20 up-to-date. Therefore, whenthe active-state route calculation unit 20 fails and the backup-stateroute calculation unit 20 enters the active-state, the route calculationunit 20 does not have to obtain the network information 16 from someother router 25, thus minimizing the influence of an error (such as lossof packets between communication terminals).

[0106] When the router 12 is an element of the clustered router 11, thenetwork information 16 may be shared by combining the configuration inFIG. 1 and that in FIG. 18. That is, the network informationnotification packet 19 may be sent to all other route calculation units20 in the same router 12 and to all route calculation units 20 in otherrouters 12 in the clustered router 11.

[0107] According to the present invention, network information collectedby the routing protocol in each router in a clustered router is sent toother routers in the clustered router. This makes it possible for allrouters in the clustered router to share the network information.

[0108] Sharing network information as described above makes a clusteredrouter, composed of a plurality of routers, appear as if it was a singlerouter.

[0109] Conventionally, more routers must be added as the network growsand the resulting router networks require additional network addresses.The present invention allows the user to treat the router connections inthe clustered router as internal networks, eliminating the need toassign network addresses to them. This avoids waste of network addressesand increases address space available to the user.

[0110] In the conventional system, there is a need to performconfiguration definition for each router. The clustered router, which isconfigured as a single router, eliminates that need, significantlyreducing the network management cost.

[0111] In addition, network information exchange among the routers inthe clustered router is performed in a simpler method which does not userouting protocols. This ensures the performance of terminal-to-terminalpacket forwarding which is the primary function of routers.

What is claimed is:
 1. A network information sharing method usingrouters connecting networks to which communication terminals areconnected, said network information sharing method comprising the stepsof: forming network information with a network information notificationpacket which includes a type of a routing protocol; transferring saidnetwork information notification packet among routing protocol programsof one or more other routers; and generating a routing table based onsaid network information included in said network informationnotification packet using said routing protocol program, said routingtable being used to determine a destination of a packet to betransferred among said communication terminals.
 2. A network informationsharing method using routers which have a plurality of route calculationunits, one of said plurality of route calculation units being in activestate with the rest in backup state, said network information sharingmethod comprising the steps of: forming network information with anetwork information notification packet which includes a type of arouting protocol; transferring said network information notificationpacket to routing protocol programs each operating in said routecalculation units in backup state with the use of the routing protocolprogram operating in said route calculation unit in active state; andwhen said route calculation unit in active state fails, sending orreceiving the network information to or from other routers with the useof said routing protocol program in one of said route calculation unitsin backup state based on said transferred network information.
 3. Anetwork information sharing method using a router in which a pluralityof routing protocol programs operate, each of said plurality of routingprotocol programs executing a different routing protocol, said networkinformation sharing method comprising the steps of: forming networkinformation with a network information notification packet whichincludes a type of the routing protocol; transferring said networkinformation among routing protocol programs of one or more otherrouters, said network information being collected based on the routingprotocol corresponding to each of said routing protocol programs; andreceiving said network information collected based on the other routingprotocols and sending said network information to an external router. 4.A network information sharing method using a plurality of routersconnecting networks to which communication terminals are connected, saidnetwork information sharing method comprising the steps of: formingnetwork information with a network information notification packet whichincludes a type of a routing protocol; transferring said networkinformation notification packet among routing programs of said pluralityof routers, said network information notification packet including saidnetwork information collected by the routing protocol of the routingprotocol programs provided in each of said plurality of routers; andgenerating a routing table based on said network information using saidrouting protocol program, said routing table being used to decide adestination of a packet to be transferred among said communicationterminals.
 5. A router connecting networks to which communicationterminals are connected and which allows network information 16 to beshared, said router comprising: means for forming the networkinformation with a network information notification packet whichincludes a type of a routing protocol; means for transferring saidnetwork information notification packet among routing protocol programsof one or more other routers; and means for generating a routing tablebased on said network information included in said network informationnotification packet using said routing protocol program, said routingtable being used to decide a destination of a packet to be transferredamong said communication terminals.
 6. A clustered router comprising aplurality of routers connecting networks to which communicationterminals are connected, each of said plurality of routers comprising:means for forming the network information with a network informationnotification packet which includes a type of a routing protocol; meansfor transferring said network information notification packet amongrouting programs of said plurality of routers, said network informationnotification packet including said network information collected by therouting protocol of the routing protocol program provided in each ofsaid plurality of routers; and means for generating a routing tablebased on said network information using said routing protocol program,said routing table being used to decide a destination of a packet to betransferred among said communication terminals.
 7. A router which has aplurality of route calculation units and which allows networkinformation to be shared, one of said plurality of route calculationunits being in active state with the rest in backup state, said routercomprising: means for forming the network information with a networkinformation notification packet which includes a type of a routingprotocol; means for transferring said network information notificationpacket to routing protocol programs each operating in said routecalculation units in backup state with the use of the routing protocolprogram operating in said route calculation unit in active state; andmeans for sending or receiving the network information to or from otherrouters with the use of said routing protocol program in one of saidroute calculation units in backup state based on said transferrednetwork information when said route calculation unit in active statefails.
 8. A router in which a plurality of routing protocol programsoperate and which allows network information to be shared, each of saidplurality of routing protocol programs executing a different routingprotocol, said router comprising: means for forming the networkinformation with a network information notification packet whichincludes a type of the routing protocol; means for transferring saidnetwork information among routing protocol programs of one or more otherrouters, said network information being collected based on the routingprotocol corresponding to each of said routing protocol programs; andmeans for receiving said network information collected based on theother routing protocols and sending said network information to anexternal router.